package com.github.permissiondog.cancanpandroid.repository;

import com.github.permissiondog.cancanpandroid.model.Application;
import com.github.permissiondog.cancanpandroid.repository.api.response.ApplicationInfoResponse;
import com.github.permissiondog.cancanpandroid.util.CallBack;

import java.util.List;

public interface ApplicationRepository {
    void getApplicantApplications(CallBack<List<Application>> applications);
    void getApproverApplications(CallBack<List<Application>> applications);
    void getApplicationInfo(int applicationId, CallBack<ApplicationInfoResponse> applicationInfo);
    void createApplication(int templateId, String reason, String imageSha, CallBack<Application> application);
    void approveApplication(int applicationId, boolean approve, String opinion, CallBack<Boolean> ok);
    void confirmApplication(int applicationId, CallBack<Boolean> ok);
}
